Views maken
Bouw views over strings
Views maken is een gratis C++ Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject C++ Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus C++ Academy bevat in totaal 4 lessen.
Van een stringliteral
De eenvoudigste view komt van een stringliteral. De lengte wordt automatisch berekend.
#include <iostream>
#include <string_view>
int main() {
std::string_view sv = "automatic length";
std::cout << sv.size() << "\n";
}Van een std::string
Een std::string wordt impliciet naar een view geconverteerd, zodat je de inhoud kunt bekijken zonder te kopiëren.
#include <iostream>
#include <string>
#include <string_view>
int main() {
std::string s = "owned text";
std::string_view sv = s;
std::cout << sv << "\n";
}Van pointer en lengte
Je kunt een view maken van een pointer naar tekens en een expliciete lengte. Dat is handig voor buffers die niet nulbeëindigd zijn.
#include <iostream>
#include <string_view>
int main() {
const char buf[] = {'H','e','l','l','o','!'};
std::string_view sv(buf, 5);
std::cout << sv << "\n"; // Hello
}Het sv-literalsuffix
Het suffix sv uit std::string_view_literals maakt rechtstreeks een view en verwerkt ingebedde nultekens correct.
#include <iostream>
#include <string_view>
using namespace std::string_view_literals;
int main() {
auto sv = "ready"sv;
std::cout << sv.size() << "\n";
}Snijden met substr
substr(pos, count) retourneert een nieuwe view in dezelfde buffer. Zo kun je kosteloos een deel van de tekst bekijken.
#include <iostream>
#include <string_view>
int main() {
std::string_view sv = "2026-05-30";
std::cout << sv.substr(0, 4) << "\n"; // 2026
}remove_prefix
remove_prefix(n) verkleint de view aan de voorkant door de startpointer vooruit te zetten; er wordt niets gekopieerd.
#include <iostream>
#include <string_view>
int main() {
std::string_view sv = " trimmed";
sv.remove_prefix(3);
std::cout << sv << "\n"; // trimmed
}remove_suffix
remove_suffix(n) verkleint de view aan de achterkant door de lengte te verminderen.
#include <iostream>
#include <string_view>
int main() {
std::string_view sv = "data.csv";
sv.remove_suffix(4);
std::cout << sv << "\n"; // data
}Lege views
Een view die met de standaardconstructor is gemaakt, is leeg; empty() retourneert true en size() is nul.
#include <iostream>
#include <string_view>
int main() {
std::string_view sv;
std::cout << sv.empty() << " " << sv.size() << "\n";
}Een view kopiëren is goedkoop
Als je de ene view aan een andere toewijst, worden alleen de pointer en de lengte gekopieerd. Beide verwijzen nog steeds naar dezelfde tekens.
#include <iostream>
#include <string_view>
int main() {
std::string_view a = "shared";
std::string_view b = a;
b.remove_prefix(3);
std::cout << a << " " << b << "\n"; // shared red
}Terug converteren naar string
Wanneer je eigenaar van de gegevens moet worden, maak je een std::string van de view. Op dat moment vindt bewust een kopie plaats.
#include <iostream>
#include <string>
#include <string_view>
int main() {
std::string_view sv = "copy me";
std::string owned{sv};
std::cout << owned << "\n";
}Een constructiemethode kiezen
Gebruik literals en impliciete conversie voor alledaagse gevallen, de vorm met pointer en lengte voor onbewerkte buffers, en substr/remove_* om opnieuw te snijden zonder geheugentoewijzing.
Snelle controle
Controleer je begrip van het maken van views.
Samenvatting
Je hebt geleerd hoe je views maakt:
- Van literals, tekenreeksen of een pointer plus lengte.
- Het suffix
svmaakt rechtstreeks views. substr,remove_prefixenremove_suffixsnijden opnieuw zonder geheugentoewijzing.- Maak een
std::stringwanneer je eigenaar van de gegevens moet worden.
Leer C++ met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 51
- Lessen
- 203
Veelgestelde vragen
Is de les “Views maken” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad C++ Academy, waaronder “Views maken”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus C++ Academy bevat in totaal 4 lessen.
Wat leer ik in “Views maken”?
Bouw views over strings Je oefent met C++ Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met C++ Academy te beginnen?
Ervaring vooraf is niet nodig. C++ Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Views maken”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over C++ Academy?
Ja. Elke les over C++ Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.