Narzędzia użytkownika

Narzędzia witryny


units

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Previous revision
Next revision
Previous revision
units [2009/04/30 06:50]
snowak2
units [2009/04/30 06:56] (aktualna)
snowak2
Linia 1: Linia 1:
 ====== Biblioteka boost - boost::​units ====== ====== Biblioteka boost - boost::​units ======
-Biblioteka ta pozwala definiować systemy jednostek, służących do obliczeń ilościowych. Umożliwia prowadzenie obliczeń w jednostkach z różnych systemów, pod warunkiem, że prawa konwersji jednostek zostały zdefiniowane.\\+==== Wprowadzenie ==== 
 +Biblioteka ta pozwala definiować systemy jednostek, służących do obliczeń ilościowych. Umożliwia prowadzenie obliczeń w jednostkach z różnych systemów, pod warunkiem, że prawa konwersji jednostek zostały zdefiniowane.\\ \\
 Obliczenia mogą być prowadzone na wartościach reprezentowanych przez zmienne, bez zwracania uwagi na jednostki, ponieważ rachunek jednostkowy będzie przeprowadzony implicite.\\ Obliczenia mogą być prowadzone na wartościach reprezentowanych przez zmienne, bez zwracania uwagi na jednostki, ponieważ rachunek jednostkowy będzie przeprowadzony implicite.\\
 +
 ==== Pomocne źródła ==== ==== Pomocne źródła ====
   * http://​www.boost.org/​doc/​libs/​1_37_0/​doc/​html/​boost_units.html   * http://​www.boost.org/​doc/​libs/​1_37_0/​doc/​html/​boost_units.html
   * http://​www.boost.org/​doc/​libs/​1_38_0/​doc/​html/​boost_units/​Units.html   * http://​www.boost.org/​doc/​libs/​1_38_0/​doc/​html/​boost_units/​Units.html
-===== przykładowy kod źródłowy: ​=====+ 
 +==== przykładowy kod źródłowy:​ ====
 <code cpp> <code cpp>
 /** /**
Linia 51: Linia 54:
 #include <​boost/​mpl/​vector.hpp>​ #include <​boost/​mpl/​vector.hpp>​
  
-#include <​boost/​units/​pow.hpp>​ //​definiowanie jednostek skalowanych i potegowanie +#include <​boost/​units/​pow.hpp>​ //​definiowanie jednostek skalowanych i potegowanie 
-#include <​boost/​units/​quantity.hpp>​ //uzywanie jednostek do obliczeń ilosciowych +#include <​boost/​units/​quantity.hpp>​ //uzywanie jednostek do obliczeń ilosciowych 
-#include <​boost/​units/​io.hpp>​ //obsluga base_unit_info +#include <​boost/​units/​io.hpp>​ //obsluga base_unit_info 
-#include <​boost/​units/​base_dimension.hpp>​ //​definiowanie wymiarow podstawowych jednostek+#include <​boost/​units/​base_dimension.hpp>​ //​definiowanie wymiarow podstawowych jednostek
 #include <​boost/​units/​derived_dimension.hpp>​ //​tworzenie jednostek pochodnych od podstawowych #include <​boost/​units/​derived_dimension.hpp>​ //​tworzenie jednostek pochodnych od podstawowych
-#include <​boost/​units/​static_constant.hpp>​ //​definiowanie stalych do deklaracji zmiennych +#include <​boost/​units/​static_constant.hpp>​ //​definiowanie stalych do deklaracji zmiennych 
-#include <​boost/​units/​unit.hpp>​ //​podstawowy naglowek +#include <​boost/​units/​unit.hpp>​ //​podstawowy naglowek 
-#include <​boost/​units/​base_unit.hpp>​ //tworzenie podstawowych jednostek skojarzonych z odpowiednim wymiarem +#include <​boost/​units/​base_unit.hpp>​ //tworzenie podstawowych jednostek skojarzonych z odpowiednim wymiarem 
-#include <​boost/​units/​make_system.hpp>​ //tworzenie systemu jednostek+#include <​boost/​units/​make_system.hpp>​ //tworzenie systemu jednostek
  
 namespace boost { namespace boost {
Linia 179: Linia 182:
     /**     /**
      * Demonstracja obliczeń wykonywanych na jednostkach.      * Demonstracja obliczeń wykonywanych na jednostkach.
-  * Prosze zwrocic uwage na zastosowanie stalych kilograms, seconds, itp.+     * Prosze zwrocic uwage na zastosowanie stalych ​"kilograms""seconds", itp.
      */      */
     std::cout << "​L ​                                = " << L << std::endl     std::cout << "​L ​                                = " << L << std::endl
Linia 188: Linia 191:
               << "​L*meter ​                          = " << L*meter <<​ std::endl               << "​L*meter ​                          = " << L*meter <<​ std::endl
               << "​kilograms*(L/​seconds)*(L/​seconds) = "               << "​kilograms*(L/​seconds)*(L/​seconds) = "
-              << kilograms*(L/​seconds)*(L/​seconds) << std::endl+              << kilograms*(L/​seconds)*(L/​seconds) << std::endl
               << "​kilograms*(L/​seconds)^2 ​          = "               << "​kilograms*(L/​seconds)^2 ​          = "
-              << kilograms*pow<​2>​(L/​seconds) << std::endl+              << kilograms*pow<​2>​(L/​seconds) << std::endl
               << "​L^3 ​                              = "               << "​L^3 ​                              = "
-              << pow<​3>​(L) << std::endl+              << pow<​3>​(L) << std::endl
               << "​L^(3/​2) ​                          = "               << "​L^(3/​2) ​                          = "
-              << pow<​static_rational<​3,​2>​ >(L) << std::endl+              << pow<​static_rational<​3,​2>​ >(L) << std::endl
               << "​2vL ​                              = "               << "​2vL ​                              = "
-              << root<​2>​(L) << std::endl+              << root<​2>​(L) << std::endl
               << "​(3/​2)vL ​                          = "               << "​(3/​2)vL ​                          = "
-              << root<​static_rational<​3,​2>​ >(L) << std::endl+              << root<​static_rational<​3,​2>​ >(L) << std::endl
               << std::endl;               << std::endl;
     }     }
Linia 204: Linia 207:
 } }
 </​code>​ </​code>​
 +
 +==== Autor ====
 +Stanisław Nowak, I1ISI\\
 +snowak2@stud.elka.pw.edu.pl
  
  
  
units.1241067053.txt.gz · ostatnio zmienione: 2009/04/30 06:50 przez snowak2