Skip to content

C++ bibliotek med en headerfil som implementerer en lenket liste

License

Notifications You must be signed in to change notification settings

barskern/listtools-ng

Repository files navigation

listtools-ng

Build Status

listtools-ng er et bibliotek bestående av en headerfil som implementerer en enkel lenket liste. Hovedmålet med biblioteket er å gi en enkel, minimal og elegant abstraksjon over en lenket liste.

Hvordan bruke prosjektet

Alt som trengs for å få tilgang til biblioteket er å skrive #include "listtools-ng.h" i ditt prosjekt, etter at du har lastet ned headerfilen.

Eksempel

#include "listtools-ng.h"
#include <iostream>

struct el : public element {
  int m_val;

  el(int val) : element('E'), m_val(val) {}
};

int main() {
  list list;

  list.push_front(new el(5));
  std::cout << ((el *)list.front())->m_val << std::endl; // Printer '5'

  list.push_front(new el(10));
  std::cout << ((el *)list.front())->m_val << std::endl; // Printer '10'

  // Fjern det første elementet i listen
  el *front = (el *)list.pop_front();
  std::cout << front->m_val << std::endl;                // Printer '10'
  std::cout << ((el *)list.front())->m_val << std::endl; // Printer '5'
}

Se i mappen examples for flere eksempler på bruk av biblioteket.

Dokumentasjon

Dokumentasjonen ligger på barskern.no/listtools-ng.

Man kan også generere dokumentasjonen lokalt. For å kunne generere dokumentasjonen må man ha doxygen installert. Man kan enten kjøre make docs eller følgende kommandoer for CMake:

cmake -H. -Bbuild
cmake --build build --target docs

Den genererte dokumentasjonen lages build/html-mappen. Ved å åpne build/html/index.html så finner man hovedsiden.

Kjøre tester

For å kjøre testene kan man enten kjøre make tests eller følgende kommandoer for CMake:

cmake -H. -Bbuild
cmake --build build
./build/tests/ListTests

About

C++ bibliotek med en headerfil som implementerer en lenket liste

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages