{"id":12694,"date":"2022-10-01T14:34:07","date_gmt":"2022-10-01T09:04:07","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/"},"modified":"2022-10-01T14:34:07","modified_gmt":"2022-10-01T09:04:07","slug":"solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/","title":{"rendered":"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-51181253\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"51181253\" data-parentid=\"51181151\" data-score=\"2\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<blockquote>\n<p>Why doesn&#8217;t std::vector or other containers have length as a member variable, instead of a function?<\/p>\n<\/blockquote>\n<p>Because it would be writable if it was a public member variable.  Since it makes no sense to write to the size member of a vector, the designers made the size member private and provided a <code>size()<\/code> method to read its value.  A java array&#8217;s <code>length<\/code> member is declared <code>final<\/code> so you can&#8217;t change it.  You could do the same thing in C++ with a <code>const<\/code> length member, but <code>std::vector<\/code> needs to be able to change its <code>length<\/code>, so that doesn&#8217;t make sense either.  That&#8217;s the same reason java&#8217;s <code>ArrayList<\/code> class uses a <code>size()<\/code> method rather than a public member (that and so that it can provide dynamic dispatch through the <code>List<\/code> interface).<\/p>\n<blockquote>\n<p>Reading a vector&#8217;s size using a function is more costly than a member variable.<\/p>\n<\/blockquote>\n<p>It really isn&#8217;t.  The method&#8217;s definition is available at the point of the call, so the call will almost certainly be inlined by any decent compiler.  In the end, the compiler will end up generating the exact same machine code for a public member variable or an accessor method.<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">2<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] Why doesn&#8217;t std::vector or other containers have length as a member variable, instead of a function? Because it would be writable if it was a public member variable. Since it makes no sense to write to the size member of a vector, the designers made the size member private and provided a size() method &#8230; <a title=\"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\" aria-label=\"More on [Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[324,323,1369,761],"class_list":["post-12694","post","type-post","status-publish","format-standard","hentry","category-solved","tag-c","tag-java","tag-optimization","tag-stl"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] Why doesn&#8217;t std::vector or other containers have length as a member variable, instead of a function? Because it would be writable if it was a public member variable. Since it makes no sense to write to the size member of a vector, the designers made the size member private and provided a size() method ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-01T09:04:07+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]\",\"datePublished\":\"2022-10-01T09:04:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\"},\"wordCount\":237,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"c++\",\"java\",\"optimization\",\"stl\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\",\"name\":\"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-10-01T09:04:07+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] - JassWeb","og_description":"[ad_1] Why doesn&#8217;t std::vector or other containers have length as a member variable, instead of a function? Because it would be writable if it was a public member variable. Since it makes no sense to write to the size member of a vector, the designers made the size member private and provided a size() method ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/","og_site_name":"JassWeb","article_published_time":"2022-10-01T09:04:07+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]","datePublished":"2022-10-01T09:04:07+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/"},"wordCount":237,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["c++","java","optimization","stl"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/","url":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/","name":"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed] - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-10-01T09:04:07+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-why-doesnt-vector-support-size-as-member-variable-like-length-variable-in-a-java-class-instead-a-function-size-closed\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] Why doesnt vector support size as member variable like length variable in a Java class, instead a function size()? [closed]"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/12694","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=12694"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/12694\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=12694"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=12694"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=12694"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}